package Z.dailyExercise.April;

import java.util.Arrays;

public class _80删除有序数组中的重复项II {
    public static void main(String[] args) {
        _80删除有序数组中的重复项II test = new _80删除有序数组中的重复项II();
        test.removeDuplicates(new int[]{0,0,1,1,1,1,2,3,3});
    }
    /**
     *
     * 考虑类似桶排序
     * 先判断和上一个是否一致
     * 一致：判断count 小于2 count+1 插入
     * 不一致：count=0，插入
     * @param nums
     * @return
     */
    public int removeDuplicates(int[] nums) {
        Arrays.sort(nums);
        
        int count = 1;//元素的重复次数
        int amount= 1;//已经存进去的长度
        for (int i = 1; i < nums.length; i++) {
            if (nums[i] == nums[amount-1]){
                if (count <2){
                    count++;
                    nums[amount++] = nums[i];
                }
            }else {
                count = 1;
                nums[amount++] = nums[i];
            }

        }

        return amount;

    }
}
